/*
 * @Author: szx
 * @Date: 2021-10-27 13:39:47
 * @LastEditTime: 2021-10-27 13:55:45
 * @Description:
 * @FilePath: \leetcode\53\53.go
 */
package main

func maxSubArray(nums []int) int {
	// 这个真的有点强无敌了
	max := nums[0]
	for i := 1; i < len(nums); i++ {
		// 如果加入原来的，发现还弱，那就不加入
		// 如果比原来的强，那就加入
		if nums[i]+nums[i-1] > nums[i] {
			nums[i] += nums[i-1]
		}
		if nums[i] > max {
			max = nums[i]
		}
	}
	return max
}
